Флаги
O D I T S Z A P C * ? ? ? ? *
Команда:
IMUL source
Логика:
AX = AL * source ;операнд source - байт or DX:AX = AX * source ;операнд source - слово
Эта команда выполняет умножение с учетом знака. Если операнд source является байтом, то IMUL умножает операнд source на AL, засылая произведение в AX. Если же операнд source является словом, то IMUL умножает операнд source на AX, засылая произведение в DX:AX. Флаги переноса и переполнения CF и OF устанавливаются (=1), если старшая половина результата (т.е. AH для случая, когда source - байт, и DX, когда source - слово) содержит какую-либо значащую цифру произведения, иначе они сбрасываются (=0).
Операнды | Такт байты (слова) | Обращения | Байты | Пример |
регистр8 | 80-98 | - | 2 | IMUL CL |
регистр16 | 128-154 | - | 2 | IMUL BX |
память8 | (86-104)+EA | 1 | 2-4 | IMUL BYTE |
память16 | (138-164)+EA | 1 | 2-4 | IMUL WORD[BP][DI] |